package com.ruoyi.base.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 业务消息通知业务对象 sys_message_info
 *
 * @author kangyu
 * @date 2024-10-30
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class SysMessageInfoBo extends BaseEntity {

    /**
     *
     */
    @NotNull(message = "不能为空", groups = { EditGroup.class })
    private Long mId;

    /**
     * 消息标题
     */
//    @NotBlank(message = "消息标题不能为空", groups = { AddGroup.class, EditGroup.class })
    private String messageTitle;

    /**
     * 业务id
     */
//    @NotNull(message = "业务id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long businessId;

    /**
     * 实验室id
     */
//    @NotNull(message = "实验室id不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long deptId;

    /**
     * 用户id
     */
//    @NotBlank(message = "用户id不能为空", groups = { AddGroup.class, EditGroup.class })
    private String userIds;

    /**
     * 消息类型
     */
//    @NotNull(message = "消息类型不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long messageType;

    /**
     * 消息内容
     */
//    @NotNull(message = "消息内容不能为空", groups = { AddGroup.class, EditGroup.class })
    private String messageContent;
    /**
     * 模块标识
     */
    private String modelType;

    /**
     * 程度
     */
//    @NotNull(message = "程度不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long degree;

    /**
     * 状态
     */
//    @NotNull(message = "状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long status;

    public SysMessageInfoBo(Long businessId, String modelType) {
        this.businessId = businessId;
        this.modelType = modelType;
    }

    public SysMessageInfoBo() {
    }
}
